﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.Caching;
namespace ECommerce.DAO.Cache.Productos.CódigosProducto
{
    public static class CódigoProducto
    {
        public static ECommerce.Model.Productos.CódigosProducto.CódigoProducto GetCódigoProductoById(Int32 Id)
        {
            ECommerce.Model.Productos.CódigosProducto.CódigoProducto CódigoProducto = new ECommerce.Model.Productos.CódigosProducto.CódigoProducto();
            try
            {
                CódigoProducto = (ECommerce.Model.Productos.CódigosProducto.CódigoProducto)HttpRuntime.Cache["CódigoProducto-" + Id.ToString()];
            }
            catch (Exception ex)
            {
                CódigoProducto = null;
            }
            if (CódigoProducto.Id == 0)
                CódigoProducto = null;
            return CódigoProducto;
        }
        public static int SetCódigoProducto(ECommerce.Model.Productos.CódigosProducto.CódigoProducto CódigoProducto)
        {
            try
            {
                HttpRuntime.Cache.Insert("CódigoProducto-" + CódigoProducto.Id.ToString(), CódigoProducto);
            }
            catch (Exception ex)
            {
            }
            return CódigoProducto.Id;
        }
        public static int DelCódigoProducto(ECommerce.Model.Productos.CódigosProducto.CódigoProducto CódigoProducto)
        {
            int result = 0;
            try
            {
                HttpRuntime.Cache.Remove("CódigoProducto-" + CódigoProducto.Id.ToString());
            }
            catch (Exception ex)
            {
            }
            return result;
        }


        public static ECommerce.Model.Productos.CódigosProducto.CódigoProducto[] GetCódigosProductoByProductoId(int Id)
        {
            ECommerce.Model.Productos.CódigosProducto.CódigoProducto[] CódigosProducto;
            try
            {
                CódigosProducto = (ECommerce.Model.Productos.CódigosProducto.CódigoProducto[])HttpRuntime.Cache["CódigosProductoByIdProducto-" + Id.ToString()];
            }
            catch (Exception ex)
            {
                CódigosProducto = null;
            }
            if (CódigosProducto!=null && CódigosProducto.Length == 0)
                CódigosProducto = null;
            return CódigosProducto;
        }
    }
}
